﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using SharpArch.Domain.DomainModel;

namespace ChampionsLeagueBets.Domain
{
	public class Tournament : BaseEntity
	{
		[Required(ErrorMessage = "Musisz podać nazwę zawodów")]
		[DisplayName("Nazwa zawodów")]
		public virtual string Name { get; set; }

		[Required(ErrorMessage = "Musisz podać datę rozpoczęcia zawodów")]
		[DisplayName("Data rozpoczęcia")]
		public virtual DateTime StartDate { get; set; }
		
		[Required(ErrorMessage = "Musisz podać datę zakończenia zawodów")]
		[DisplayName("Data zakończenia")]
		public virtual DateTime EndDate { get; set; }
		
		public virtual IList<Game> Games { get; set; }
		public virtual IList<TournamentUserResult> TournamentUserResults { get; set; }

		[Required(ErrorMessage = "Musisz podać kwotę")]
		[DisplayName("Stawiana kwota")]
		public virtual int Money { get; set; }

		[Required(ErrorMessage = "Musisz podać jednostę rozliczeniową")]
		[DisplayName("Jednostka rozliczeniowa")]
		public virtual UnitOfAccount UnitOfAccount { get; set; }
	}
}
